package leetcode_500;

import java.util.TreeSet;



/**
 *@author 周杨
 *ThirdMaximumNumber_414 返回一个数组里第三大的数
 *describe:用treeMap实现 AC 18%
 *2018年7月21日 下午4:22:20
 */
public class ThirdMaximumNumber_414 {
	public static void main(String[] args) {
		ThirdMaximumNumber_414 test=new ThirdMaximumNumber_414();
		test.thirdMax(new int[] {2,2,3,1});
	}
	
	public int thirdMax(int[] nums) {
        TreeSet<Integer> set=new TreeSet<Integer>();
        set.add(nums[0]);
        for(int num:nums) {
        	if(num>set.first()||set.size()<3) {
        		set.add(num);
        		if(set.size()>3)
        			set.remove(set.first());
        	}
        }
        return set.size()==3?set.last():set.first();
    }
}
